Termination of the following Term Rewriting System could not be shown:

Context-sensitive rewrite system:
The TRS R consists of the following rules:

zeroscons(0, zeros)
U11(tt, L) → U12(tt, L)
U12(tt, L) → s(length(L))
length(nil) → 0
length(cons(N, L)) → U11(tt, L)

The replacement map contains the following entries:

zeros: empty set
cons: {1}
0: empty set
U11: {1}
tt: empty set
U12: {1}
s: {1}
length: {1}
nil: empty set


CSR
  ↳ CSRInnermostProof
  ↳ Incomplete Giesl Middeldorp-Transformation
  ↳ Trivial-Transformation

Context-sensitive rewrite system:
The TRS R consists of the following rules:

zeroscons(0, zeros)
U11(tt, L) → U12(tt, L)
U12(tt, L) → s(length(L))
length(nil) → 0
length(cons(N, L)) → U11(tt, L)

The replacement map contains the following entries:

zeros: empty set
cons: {1}
0: empty set
U11: {1}
tt: empty set
U12: {1}
s: {1}
length: {1}
nil: empty set

The CSR is orthogonal. By [10] we can switch to innermost.

↳ CSR
  ↳ CSRInnermostProof
CSR
      ↳ CSDependencyPairsProof
  ↳ Incomplete Giesl Middeldorp-Transformation
  ↳ Trivial-Transformation

Context-sensitive rewrite system:
The TRS R consists of the following rules:

zeroscons(0, zeros)
U11(tt, L) → U12(tt, L)
U12(tt, L) → s(length(L))
length(nil) → 0
length(cons(N, L)) → U11(tt, L)

The replacement map contains the following entries:

zeros: empty set
cons: {1}
0: empty set
U11: {1}
tt: empty set
U12: {1}
s: {1}
length: {1}
nil: empty set

Innermost Strategy.

Using Improved CS-DPs we result in the following initial Q-CSDP problem.

↳ CSR
  ↳ CSRInnermostProof
    ↳ CSR
      ↳ CSDependencyPairsProof
QCSDP
          ↳ QCSDependencyGraphProof
  ↳ Incomplete Giesl Middeldorp-Transformation
  ↳ Trivial-Transformation

Q-restricted context-sensitive dependency pair problem:
The symbols in {s, length, LENGTH} are replacing on all positions.
For all symbols f in {cons, U11, U12, U121, U111} we have µ(f) = {1}.
The symbols in {U} are not replacing on any position.

The ordinary context-sensitive dependency pairs DPo are:

U111(tt, L) → U121(tt, L)
U121(tt, L) → LENGTH(L)
LENGTH(cons(N, L)) → U111(tt, L)

The collapsing dependency pairs are DPc:

U121(tt, L) → L


The hidden terms of R are:

zeros

Every hiding context is built from:none

Hence, the new unhiding pairs DPu are :

U121(tt, L) → U(L)
U(zeros) → ZEROS

The TRS R consists of the following rules:

zeroscons(0, zeros)
U11(tt, L) → U12(tt, L)
U12(tt, L) → s(length(L))
length(nil) → 0
length(cons(N, L)) → U11(tt, L)

The set Q consists of the following terms:

zeros
U11(tt, x0)
U12(tt, x0)
length(nil)
length(cons(x0, x1))


The approximation of the Context-Sensitive Dependency Graph contains 1 SCC with 2 less nodes.


↳ CSR
  ↳ CSRInnermostProof
    ↳ CSR
      ↳ CSDependencyPairsProof
        ↳ QCSDP
          ↳ QCSDependencyGraphProof
QCSDP
              ↳ ConvertedToQDPProblemProof
  ↳ Incomplete Giesl Middeldorp-Transformation
  ↳ Trivial-Transformation

Q-restricted context-sensitive dependency pair problem:
The symbols in {s, length, LENGTH} are replacing on all positions.
For all symbols f in {cons, U11, U12, U121, U111} we have µ(f) = {1}.

The TRS P consists of the following rules:

U121(tt, L) → LENGTH(L)
LENGTH(cons(N, L)) → U111(tt, L)
U111(tt, L) → U121(tt, L)

The TRS R consists of the following rules:

zeroscons(0, zeros)
U11(tt, L) → U12(tt, L)
U12(tt, L) → s(length(L))
length(nil) → 0
length(cons(N, L)) → U11(tt, L)

The set Q consists of the following terms:

zeros
U11(tt, x0)
U12(tt, x0)
length(nil)
length(cons(x0, x1))


Converted QDP Problem, but could not keep Q or minimality.

↳ CSR
  ↳ CSRInnermostProof
    ↳ CSR
      ↳ CSDependencyPairsProof
        ↳ QCSDP
          ↳ QCSDependencyGraphProof
            ↳ QCSDP
              ↳ ConvertedToQDPProblemProof
QDP
                  ↳ NonTerminationProof
  ↳ Incomplete Giesl Middeldorp-Transformation
  ↳ Trivial-Transformation

Q DP problem:
The TRS P consists of the following rules:

LENGTH(cons(N, L)) → U111(tt, L)
U111(tt, L) → U121(tt, L)
U121(tt, L) → LENGTH(L)

The TRS R consists of the following rules:

zeroscons(0, zeros)
U11(tt, L) → U12(tt, L)
U12(tt, L) → s(length(L))
length(nil) → 0
length(cons(N, L)) → U11(tt, L)

Q is empty.
We have to consider all (P,Q,R)-chains.
We used the non-termination processor [17] to show that the DP problem is infinite.
Found a loop by narrowing to the left:

The TRS P consists of the following rules:

LENGTH(cons(N, L)) → U111(tt, L)
U111(tt, L) → U121(tt, L)
U121(tt, L) → LENGTH(L)

The TRS R consists of the following rules:

zeroscons(0, zeros)
U11(tt, L) → U12(tt, L)
U12(tt, L) → s(length(L))
length(nil) → 0
length(cons(N, L)) → U11(tt, L)


s = U111(tt, zeros) evaluates to t =U111(tt, zeros)

Thus s starts an infinite chain as s semiunifies with t with the following substitutions:




Rewriting sequence

U111(tt, zeros)U111(tt, cons(0, zeros))
with rule zeroscons(0, zeros) at position [1] and matcher [ ]

U111(tt, cons(0, zeros))U121(tt, cons(0, zeros))
with rule U111(tt, L') → U121(tt, L') at position [] and matcher [L' / cons(0, zeros)]

U121(tt, cons(0, zeros))LENGTH(cons(0, zeros))
with rule U121(tt, L') → LENGTH(L') at position [] and matcher [L' / cons(0, zeros)]

LENGTH(cons(0, zeros))U111(tt, zeros)
with rule LENGTH(cons(N, L)) → U111(tt, L)

Now applying the matcher to the start term leads to a term which is equal to the last term in the rewriting sequence


All these steps are and every following step will be a correct step w.r.t to Q.




We applied the Incomplete Giesl Middeldorp transformation [11] to transform the context-sensitive TRS to a usual TRS.

↳ CSR
  ↳ CSRInnermostProof
  ↳ Incomplete Giesl Middeldorp-Transformation
QTRS
      ↳ RRRPoloQTRSProof
  ↳ Trivial-Transformation

Q restricted rewrite system:
The TRS R consists of the following rules:

mark(zeros) → zerosActive
zerosActivezeros
mark(U11(x1, x2)) → U11Active(mark(x1), x2)
U11Active(x1, x2) → U11(x1, x2)
mark(U12(x1, x2)) → U12Active(mark(x1), x2)
U12Active(x1, x2) → U12(x1, x2)
mark(length(x1)) → lengthActive(mark(x1))
lengthActive(x1) → length(x1)
mark(cons(x1, x2)) → cons(mark(x1), x2)
mark(0) → 0
mark(tt) → tt
mark(s(x1)) → s(mark(x1))
mark(nil) → nil
zerosActivecons(0, zeros)
U11Active(tt, L) → U12Active(tt, L)
U12Active(tt, L) → s(lengthActive(mark(L)))
lengthActive(nil) → 0
lengthActive(cons(N, L)) → U11Active(tt, L)

Q is empty.

The following Q TRS is given: Q restricted rewrite system:
The TRS R consists of the following rules:

mark(zeros) → zerosActive
zerosActivezeros
mark(U11(x1, x2)) → U11Active(mark(x1), x2)
U11Active(x1, x2) → U11(x1, x2)
mark(U12(x1, x2)) → U12Active(mark(x1), x2)
U12Active(x1, x2) → U12(x1, x2)
mark(length(x1)) → lengthActive(mark(x1))
lengthActive(x1) → length(x1)
mark(cons(x1, x2)) → cons(mark(x1), x2)
mark(0) → 0
mark(tt) → tt
mark(s(x1)) → s(mark(x1))
mark(nil) → nil
zerosActivecons(0, zeros)
U11Active(tt, L) → U12Active(tt, L)
U12Active(tt, L) → s(lengthActive(mark(L)))
lengthActive(nil) → 0
lengthActive(cons(N, L)) → U11Active(tt, L)

Q is empty.
The following rules can be removed by the rule removal processor [15] because they are oriented strictly by a polynomial ordering:

lengthActive(nil) → 0
Used ordering:
Polynomial interpretation [25]:

POL(0) = 0   
POL(U11(x1, x2)) = 2·x1 + 2·x2   
POL(U11Active(x1, x2)) = 2·x1 + 2·x2   
POL(U12(x1, x2)) = 2·x1 + 2·x2   
POL(U12Active(x1, x2)) = 2·x1 + 2·x2   
POL(cons(x1, x2)) = 2·x1 + 2·x2   
POL(length(x1)) = x1   
POL(lengthActive(x1)) = x1   
POL(mark(x1)) = x1   
POL(nil) = 2   
POL(s(x1)) = 2·x1   
POL(tt) = 0   
POL(zeros) = 0   
POL(zerosActive) = 0   




↳ CSR
  ↳ CSRInnermostProof
  ↳ Incomplete Giesl Middeldorp-Transformation
    ↳ QTRS
      ↳ RRRPoloQTRSProof
QTRS
          ↳ RRRPoloQTRSProof
  ↳ Trivial-Transformation

Q restricted rewrite system:
The TRS R consists of the following rules:

mark(zeros) → zerosActive
zerosActivezeros
mark(U11(x1, x2)) → U11Active(mark(x1), x2)
U11Active(x1, x2) → U11(x1, x2)
mark(U12(x1, x2)) → U12Active(mark(x1), x2)
U12Active(x1, x2) → U12(x1, x2)
mark(length(x1)) → lengthActive(mark(x1))
lengthActive(x1) → length(x1)
mark(cons(x1, x2)) → cons(mark(x1), x2)
mark(0) → 0
mark(tt) → tt
mark(s(x1)) → s(mark(x1))
mark(nil) → nil
zerosActivecons(0, zeros)
U11Active(tt, L) → U12Active(tt, L)
U12Active(tt, L) → s(lengthActive(mark(L)))
lengthActive(cons(N, L)) → U11Active(tt, L)

Q is empty.

The following Q TRS is given: Q restricted rewrite system:
The TRS R consists of the following rules:

mark(zeros) → zerosActive
zerosActivezeros
mark(U11(x1, x2)) → U11Active(mark(x1), x2)
U11Active(x1, x2) → U11(x1, x2)
mark(U12(x1, x2)) → U12Active(mark(x1), x2)
U12Active(x1, x2) → U12(x1, x2)
mark(length(x1)) → lengthActive(mark(x1))
lengthActive(x1) → length(x1)
mark(cons(x1, x2)) → cons(mark(x1), x2)
mark(0) → 0
mark(tt) → tt
mark(s(x1)) → s(mark(x1))
mark(nil) → nil
zerosActivecons(0, zeros)
U11Active(tt, L) → U12Active(tt, L)
U12Active(tt, L) → s(lengthActive(mark(L)))
lengthActive(cons(N, L)) → U11Active(tt, L)

Q is empty.
The following rules can be removed by the rule removal processor [15] because they are oriented strictly by a polynomial ordering:

zerosActivezeros
mark(nil) → nil
Used ordering:
Polynomial interpretation [25]:

POL(0) = 0   
POL(U11(x1, x2)) = 2·x1 + 2·x2   
POL(U11Active(x1, x2)) = 2·x1 + 2·x2   
POL(U12(x1, x2)) = x1 + 2·x2   
POL(U12Active(x1, x2)) = x1 + 2·x2   
POL(cons(x1, x2)) = 2·x1 + 2·x2   
POL(length(x1)) = x1   
POL(lengthActive(x1)) = x1   
POL(mark(x1)) = 2·x1   
POL(nil) = 2   
POL(s(x1)) = x1   
POL(tt) = 0   
POL(zeros) = 1   
POL(zerosActive) = 2   




↳ CSR
  ↳ CSRInnermostProof
  ↳ Incomplete Giesl Middeldorp-Transformation
    ↳ QTRS
      ↳ RRRPoloQTRSProof
        ↳ QTRS
          ↳ RRRPoloQTRSProof
QTRS
              ↳ RRRPoloQTRSProof
  ↳ Trivial-Transformation

Q restricted rewrite system:
The TRS R consists of the following rules:

mark(zeros) → zerosActive
mark(U11(x1, x2)) → U11Active(mark(x1), x2)
U11Active(x1, x2) → U11(x1, x2)
mark(U12(x1, x2)) → U12Active(mark(x1), x2)
U12Active(x1, x2) → U12(x1, x2)
mark(length(x1)) → lengthActive(mark(x1))
lengthActive(x1) → length(x1)
mark(cons(x1, x2)) → cons(mark(x1), x2)
mark(0) → 0
mark(tt) → tt
mark(s(x1)) → s(mark(x1))
zerosActivecons(0, zeros)
U11Active(tt, L) → U12Active(tt, L)
U12Active(tt, L) → s(lengthActive(mark(L)))
lengthActive(cons(N, L)) → U11Active(tt, L)

Q is empty.

The following Q TRS is given: Q restricted rewrite system:
The TRS R consists of the following rules:

mark(zeros) → zerosActive
mark(U11(x1, x2)) → U11Active(mark(x1), x2)
U11Active(x1, x2) → U11(x1, x2)
mark(U12(x1, x2)) → U12Active(mark(x1), x2)
U12Active(x1, x2) → U12(x1, x2)
mark(length(x1)) → lengthActive(mark(x1))
lengthActive(x1) → length(x1)
mark(cons(x1, x2)) → cons(mark(x1), x2)
mark(0) → 0
mark(tt) → tt
mark(s(x1)) → s(mark(x1))
zerosActivecons(0, zeros)
U11Active(tt, L) → U12Active(tt, L)
U12Active(tt, L) → s(lengthActive(mark(L)))
lengthActive(cons(N, L)) → U11Active(tt, L)

Q is empty.
The following rules can be removed by the rule removal processor [15] because they are oriented strictly by a polynomial ordering:

mark(U11(x1, x2)) → U11Active(mark(x1), x2)
mark(U12(x1, x2)) → U12Active(mark(x1), x2)
mark(length(x1)) → lengthActive(mark(x1))
Used ordering:
Polynomial interpretation [25]:

POL(0) = 0   
POL(U11(x1, x2)) = 1 + 2·x1 + 2·x2   
POL(U11Active(x1, x2)) = 1 + 2·x1 + 2·x2   
POL(U12(x1, x2)) = 1 + 2·x1 + x2   
POL(U12Active(x1, x2)) = 1 + 2·x1 + 2·x2   
POL(cons(x1, x2)) = x1 + 2·x2   
POL(length(x1)) = 1 + x1   
POL(lengthActive(x1)) = 1 + x1   
POL(mark(x1)) = 2·x1   
POL(s(x1)) = x1   
POL(tt) = 0   
POL(zeros) = 0   
POL(zerosActive) = 0   




↳ CSR
  ↳ CSRInnermostProof
  ↳ Incomplete Giesl Middeldorp-Transformation
    ↳ QTRS
      ↳ RRRPoloQTRSProof
        ↳ QTRS
          ↳ RRRPoloQTRSProof
            ↳ QTRS
              ↳ RRRPoloQTRSProof
QTRS
                  ↳ RRRPoloQTRSProof
  ↳ Trivial-Transformation

Q restricted rewrite system:
The TRS R consists of the following rules:

mark(zeros) → zerosActive
U11Active(x1, x2) → U11(x1, x2)
U12Active(x1, x2) → U12(x1, x2)
lengthActive(x1) → length(x1)
mark(cons(x1, x2)) → cons(mark(x1), x2)
mark(0) → 0
mark(tt) → tt
mark(s(x1)) → s(mark(x1))
zerosActivecons(0, zeros)
U11Active(tt, L) → U12Active(tt, L)
U12Active(tt, L) → s(lengthActive(mark(L)))
lengthActive(cons(N, L)) → U11Active(tt, L)

Q is empty.

The following Q TRS is given: Q restricted rewrite system:
The TRS R consists of the following rules:

mark(zeros) → zerosActive
U11Active(x1, x2) → U11(x1, x2)
U12Active(x1, x2) → U12(x1, x2)
lengthActive(x1) → length(x1)
mark(cons(x1, x2)) → cons(mark(x1), x2)
mark(0) → 0
mark(tt) → tt
mark(s(x1)) → s(mark(x1))
zerosActivecons(0, zeros)
U11Active(tt, L) → U12Active(tt, L)
U12Active(tt, L) → s(lengthActive(mark(L)))
lengthActive(cons(N, L)) → U11Active(tt, L)

Q is empty.
The following rules can be removed by the rule removal processor [15] because they are oriented strictly by a polynomial ordering:

lengthActive(x1) → length(x1)
Used ordering:
Polynomial interpretation [25]:

POL(0) = 0   
POL(U11(x1, x2)) = x1 + x2   
POL(U11Active(x1, x2)) = 2·x1 + 2·x2   
POL(U12(x1, x2)) = 1 + x1 + 2·x2   
POL(U12Active(x1, x2)) = 1 + x1 + 2·x2   
POL(cons(x1, x2)) = 2·x1 + x2   
POL(length(x1)) = 1 + x1   
POL(lengthActive(x1)) = 2 + 2·x1   
POL(mark(x1)) = x1   
POL(s(x1)) = x1   
POL(tt) = 1   
POL(zeros) = 2   
POL(zerosActive) = 2   




↳ CSR
  ↳ CSRInnermostProof
  ↳ Incomplete Giesl Middeldorp-Transformation
    ↳ QTRS
      ↳ RRRPoloQTRSProof
        ↳ QTRS
          ↳ RRRPoloQTRSProof
            ↳ QTRS
              ↳ RRRPoloQTRSProof
                ↳ QTRS
                  ↳ RRRPoloQTRSProof
QTRS
                      ↳ RRRPoloQTRSProof
  ↳ Trivial-Transformation

Q restricted rewrite system:
The TRS R consists of the following rules:

mark(zeros) → zerosActive
U11Active(x1, x2) → U11(x1, x2)
U12Active(x1, x2) → U12(x1, x2)
mark(cons(x1, x2)) → cons(mark(x1), x2)
mark(0) → 0
mark(tt) → tt
mark(s(x1)) → s(mark(x1))
zerosActivecons(0, zeros)
U11Active(tt, L) → U12Active(tt, L)
U12Active(tt, L) → s(lengthActive(mark(L)))
lengthActive(cons(N, L)) → U11Active(tt, L)

Q is empty.

The following Q TRS is given: Q restricted rewrite system:
The TRS R consists of the following rules:

mark(zeros) → zerosActive
U11Active(x1, x2) → U11(x1, x2)
U12Active(x1, x2) → U12(x1, x2)
mark(cons(x1, x2)) → cons(mark(x1), x2)
mark(0) → 0
mark(tt) → tt
mark(s(x1)) → s(mark(x1))
zerosActivecons(0, zeros)
U11Active(tt, L) → U12Active(tt, L)
U12Active(tt, L) → s(lengthActive(mark(L)))
lengthActive(cons(N, L)) → U11Active(tt, L)

Q is empty.
The following rules can be removed by the rule removal processor [15] because they are oriented strictly by a polynomial ordering:

U12Active(x1, x2) → U12(x1, x2)
Used ordering:
Polynomial interpretation [25]:

POL(0) = 0   
POL(U11(x1, x2)) = 1 + x1 + x2   
POL(U11Active(x1, x2)) = 1 + 2·x1 + x2   
POL(U12(x1, x2)) = 2·x1 + x2   
POL(U12Active(x1, x2)) = 1 + 2·x1 + x2   
POL(cons(x1, x2)) = 2·x1 + x2   
POL(lengthActive(x1)) = 1 + x1   
POL(mark(x1)) = x1   
POL(s(x1)) = x1   
POL(tt) = 0   
POL(zeros) = 0   
POL(zerosActive) = 0   




↳ CSR
  ↳ CSRInnermostProof
  ↳ Incomplete Giesl Middeldorp-Transformation
    ↳ QTRS
      ↳ RRRPoloQTRSProof
        ↳ QTRS
          ↳ RRRPoloQTRSProof
            ↳ QTRS
              ↳ RRRPoloQTRSProof
                ↳ QTRS
                  ↳ RRRPoloQTRSProof
                    ↳ QTRS
                      ↳ RRRPoloQTRSProof
QTRS
                          ↳ RRRPoloQTRSProof
  ↳ Trivial-Transformation

Q restricted rewrite system:
The TRS R consists of the following rules:

mark(zeros) → zerosActive
U11Active(x1, x2) → U11(x1, x2)
mark(cons(x1, x2)) → cons(mark(x1), x2)
mark(0) → 0
mark(tt) → tt
mark(s(x1)) → s(mark(x1))
zerosActivecons(0, zeros)
U11Active(tt, L) → U12Active(tt, L)
U12Active(tt, L) → s(lengthActive(mark(L)))
lengthActive(cons(N, L)) → U11Active(tt, L)

Q is empty.

The following Q TRS is given: Q restricted rewrite system:
The TRS R consists of the following rules:

mark(zeros) → zerosActive
U11Active(x1, x2) → U11(x1, x2)
mark(cons(x1, x2)) → cons(mark(x1), x2)
mark(0) → 0
mark(tt) → tt
mark(s(x1)) → s(mark(x1))
zerosActivecons(0, zeros)
U11Active(tt, L) → U12Active(tt, L)
U12Active(tt, L) → s(lengthActive(mark(L)))
lengthActive(cons(N, L)) → U11Active(tt, L)

Q is empty.
The following rules can be removed by the rule removal processor [15] because they are oriented strictly by a polynomial ordering:

U11Active(x1, x2) → U11(x1, x2)
Used ordering:
Polynomial interpretation [25]:

POL(0) = 0   
POL(U11(x1, x2)) = x1 + x2   
POL(U11Active(x1, x2)) = 1 + x1 + x2   
POL(U12Active(x1, x2)) = 1 + 2·x1 + x2   
POL(cons(x1, x2)) = 2·x1 + x2   
POL(lengthActive(x1)) = 1 + x1   
POL(mark(x1)) = x1   
POL(s(x1)) = x1   
POL(tt) = 0   
POL(zeros) = 0   
POL(zerosActive) = 0   




↳ CSR
  ↳ CSRInnermostProof
  ↳ Incomplete Giesl Middeldorp-Transformation
    ↳ QTRS
      ↳ RRRPoloQTRSProof
        ↳ QTRS
          ↳ RRRPoloQTRSProof
            ↳ QTRS
              ↳ RRRPoloQTRSProof
                ↳ QTRS
                  ↳ RRRPoloQTRSProof
                    ↳ QTRS
                      ↳ RRRPoloQTRSProof
                        ↳ QTRS
                          ↳ RRRPoloQTRSProof
QTRS
                              ↳ RRRPoloQTRSProof
  ↳ Trivial-Transformation

Q restricted rewrite system:
The TRS R consists of the following rules:

mark(zeros) → zerosActive
mark(cons(x1, x2)) → cons(mark(x1), x2)
mark(0) → 0
mark(tt) → tt
mark(s(x1)) → s(mark(x1))
zerosActivecons(0, zeros)
U11Active(tt, L) → U12Active(tt, L)
U12Active(tt, L) → s(lengthActive(mark(L)))
lengthActive(cons(N, L)) → U11Active(tt, L)

Q is empty.

The following Q TRS is given: Q restricted rewrite system:
The TRS R consists of the following rules:

mark(zeros) → zerosActive
mark(cons(x1, x2)) → cons(mark(x1), x2)
mark(0) → 0
mark(tt) → tt
mark(s(x1)) → s(mark(x1))
zerosActivecons(0, zeros)
U11Active(tt, L) → U12Active(tt, L)
U12Active(tt, L) → s(lengthActive(mark(L)))
lengthActive(cons(N, L)) → U11Active(tt, L)

Q is empty.
The following rules can be removed by the rule removal processor [15] because they are oriented strictly by a polynomial ordering:

mark(0) → 0
mark(tt) → tt
Used ordering:
Polynomial interpretation [25]:

POL(0) = 0   
POL(U11Active(x1, x2)) = 1 + 2·x1 + 2·x2   
POL(U12Active(x1, x2)) = 1 + 2·x1 + 2·x2   
POL(cons(x1, x2)) = 1 + x1 + 2·x2   
POL(lengthActive(x1)) = x1   
POL(mark(x1)) = 1 + x1   
POL(s(x1)) = x1   
POL(tt) = 0   
POL(zeros) = 0   
POL(zerosActive) = 1   




↳ CSR
  ↳ CSRInnermostProof
  ↳ Incomplete Giesl Middeldorp-Transformation
    ↳ QTRS
      ↳ RRRPoloQTRSProof
        ↳ QTRS
          ↳ RRRPoloQTRSProof
            ↳ QTRS
              ↳ RRRPoloQTRSProof
                ↳ QTRS
                  ↳ RRRPoloQTRSProof
                    ↳ QTRS
                      ↳ RRRPoloQTRSProof
                        ↳ QTRS
                          ↳ RRRPoloQTRSProof
                            ↳ QTRS
                              ↳ RRRPoloQTRSProof
QTRS
                                  ↳ RRRPoloQTRSProof
  ↳ Trivial-Transformation

Q restricted rewrite system:
The TRS R consists of the following rules:

mark(zeros) → zerosActive
mark(cons(x1, x2)) → cons(mark(x1), x2)
mark(s(x1)) → s(mark(x1))
zerosActivecons(0, zeros)
U11Active(tt, L) → U12Active(tt, L)
U12Active(tt, L) → s(lengthActive(mark(L)))
lengthActive(cons(N, L)) → U11Active(tt, L)

Q is empty.

The following Q TRS is given: Q restricted rewrite system:
The TRS R consists of the following rules:

mark(zeros) → zerosActive
mark(cons(x1, x2)) → cons(mark(x1), x2)
mark(s(x1)) → s(mark(x1))
zerosActivecons(0, zeros)
U11Active(tt, L) → U12Active(tt, L)
U12Active(tt, L) → s(lengthActive(mark(L)))
lengthActive(cons(N, L)) → U11Active(tt, L)

Q is empty.
The following rules can be removed by the rule removal processor [15] because they are oriented strictly by a polynomial ordering:

mark(cons(x1, x2)) → cons(mark(x1), x2)
Used ordering:
Polynomial interpretation [25]:

POL(0) = 0   
POL(U11Active(x1, x2)) = 1 + 2·x1 + 2·x2   
POL(U12Active(x1, x2)) = 1 + x1 + 2·x2   
POL(cons(x1, x2)) = 1 + x1 + 2·x2   
POL(lengthActive(x1)) = x1   
POL(mark(x1)) = 1 + 2·x1   
POL(s(x1)) = x1   
POL(tt) = 0   
POL(zeros) = 0   
POL(zerosActive) = 1   




↳ CSR
  ↳ CSRInnermostProof
  ↳ Incomplete Giesl Middeldorp-Transformation
    ↳ QTRS
      ↳ RRRPoloQTRSProof
        ↳ QTRS
          ↳ RRRPoloQTRSProof
            ↳ QTRS
              ↳ RRRPoloQTRSProof
                ↳ QTRS
                  ↳ RRRPoloQTRSProof
                    ↳ QTRS
                      ↳ RRRPoloQTRSProof
                        ↳ QTRS
                          ↳ RRRPoloQTRSProof
                            ↳ QTRS
                              ↳ RRRPoloQTRSProof
                                ↳ QTRS
                                  ↳ RRRPoloQTRSProof
QTRS
                                      ↳ Overlay + Local Confluence
  ↳ Trivial-Transformation

Q restricted rewrite system:
The TRS R consists of the following rules:

mark(zeros) → zerosActive
mark(s(x1)) → s(mark(x1))
zerosActivecons(0, zeros)
U11Active(tt, L) → U12Active(tt, L)
U12Active(tt, L) → s(lengthActive(mark(L)))
lengthActive(cons(N, L)) → U11Active(tt, L)

Q is empty.

The TRS is overlay and locally confluent. By [19] we can switch to innermost.

↳ CSR
  ↳ CSRInnermostProof
  ↳ Incomplete Giesl Middeldorp-Transformation
    ↳ QTRS
      ↳ RRRPoloQTRSProof
        ↳ QTRS
          ↳ RRRPoloQTRSProof
            ↳ QTRS
              ↳ RRRPoloQTRSProof
                ↳ QTRS
                  ↳ RRRPoloQTRSProof
                    ↳ QTRS
                      ↳ RRRPoloQTRSProof
                        ↳ QTRS
                          ↳ RRRPoloQTRSProof
                            ↳ QTRS
                              ↳ RRRPoloQTRSProof
                                ↳ QTRS
                                  ↳ RRRPoloQTRSProof
                                    ↳ QTRS
                                      ↳ Overlay + Local Confluence
QTRS
                                          ↳ DependencyPairsProof
  ↳ Trivial-Transformation

Q restricted rewrite system:
The TRS R consists of the following rules:

mark(zeros) → zerosActive
mark(s(x1)) → s(mark(x1))
zerosActivecons(0, zeros)
U11Active(tt, L) → U12Active(tt, L)
U12Active(tt, L) → s(lengthActive(mark(L)))
lengthActive(cons(N, L)) → U11Active(tt, L)

The set Q consists of the following terms:

mark(zeros)
mark(s(x0))
zerosActive
U11Active(tt, x0)
U12Active(tt, x0)
lengthActive(cons(x0, x1))


Using Dependency Pairs [1,15] we result in the following initial DP problem:
Q DP problem:
The TRS P consists of the following rules:

MARK(zeros) → ZEROSACTIVE
MARK(s(x1)) → MARK(x1)
LENGTHACTIVE(cons(N, L)) → U11ACTIVE(tt, L)
U12ACTIVE(tt, L) → MARK(L)
U11ACTIVE(tt, L) → U12ACTIVE(tt, L)
U12ACTIVE(tt, L) → LENGTHACTIVE(mark(L))

The TRS R consists of the following rules:

mark(zeros) → zerosActive
mark(s(x1)) → s(mark(x1))
zerosActivecons(0, zeros)
U11Active(tt, L) → U12Active(tt, L)
U12Active(tt, L) → s(lengthActive(mark(L)))
lengthActive(cons(N, L)) → U11Active(tt, L)

The set Q consists of the following terms:

mark(zeros)
mark(s(x0))
zerosActive
U11Active(tt, x0)
U12Active(tt, x0)
lengthActive(cons(x0, x1))

We have to consider all minimal (P,Q,R)-chains.

↳ CSR
  ↳ CSRInnermostProof
  ↳ Incomplete Giesl Middeldorp-Transformation
    ↳ QTRS
      ↳ RRRPoloQTRSProof
        ↳ QTRS
          ↳ RRRPoloQTRSProof
            ↳ QTRS
              ↳ RRRPoloQTRSProof
                ↳ QTRS
                  ↳ RRRPoloQTRSProof
                    ↳ QTRS
                      ↳ RRRPoloQTRSProof
                        ↳ QTRS
                          ↳ RRRPoloQTRSProof
                            ↳ QTRS
                              ↳ RRRPoloQTRSProof
                                ↳ QTRS
                                  ↳ RRRPoloQTRSProof
                                    ↳ QTRS
                                      ↳ Overlay + Local Confluence
                                        ↳ QTRS
                                          ↳ DependencyPairsProof
QDP
                                              ↳ DependencyGraphProof
  ↳ Trivial-Transformation

Q DP problem:
The TRS P consists of the following rules:

MARK(zeros) → ZEROSACTIVE
MARK(s(x1)) → MARK(x1)
LENGTHACTIVE(cons(N, L)) → U11ACTIVE(tt, L)
U12ACTIVE(tt, L) → MARK(L)
U11ACTIVE(tt, L) → U12ACTIVE(tt, L)
U12ACTIVE(tt, L) → LENGTHACTIVE(mark(L))

The TRS R consists of the following rules:

mark(zeros) → zerosActive
mark(s(x1)) → s(mark(x1))
zerosActivecons(0, zeros)
U11Active(tt, L) → U12Active(tt, L)
U12Active(tt, L) → s(lengthActive(mark(L)))
lengthActive(cons(N, L)) → U11Active(tt, L)

The set Q consists of the following terms:

mark(zeros)
mark(s(x0))
zerosActive
U11Active(tt, x0)
U12Active(tt, x0)
lengthActive(cons(x0, x1))

We have to consider all minimal (P,Q,R)-chains.
The approximation of the Dependency Graph [15,17,22] contains 2 SCCs with 2 less nodes.

↳ CSR
  ↳ CSRInnermostProof
  ↳ Incomplete Giesl Middeldorp-Transformation
    ↳ QTRS
      ↳ RRRPoloQTRSProof
        ↳ QTRS
          ↳ RRRPoloQTRSProof
            ↳ QTRS
              ↳ RRRPoloQTRSProof
                ↳ QTRS
                  ↳ RRRPoloQTRSProof
                    ↳ QTRS
                      ↳ RRRPoloQTRSProof
                        ↳ QTRS
                          ↳ RRRPoloQTRSProof
                            ↳ QTRS
                              ↳ RRRPoloQTRSProof
                                ↳ QTRS
                                  ↳ RRRPoloQTRSProof
                                    ↳ QTRS
                                      ↳ Overlay + Local Confluence
                                        ↳ QTRS
                                          ↳ DependencyPairsProof
                                            ↳ QDP
                                              ↳ DependencyGraphProof
                                                ↳ AND
QDP
                                                    ↳ UsableRulesProof
                                                  ↳ QDP
  ↳ Trivial-Transformation

Q DP problem:
The TRS P consists of the following rules:

MARK(s(x1)) → MARK(x1)

The TRS R consists of the following rules:

mark(zeros) → zerosActive
mark(s(x1)) → s(mark(x1))
zerosActivecons(0, zeros)
U11Active(tt, L) → U12Active(tt, L)
U12Active(tt, L) → s(lengthActive(mark(L)))
lengthActive(cons(N, L)) → U11Active(tt, L)

The set Q consists of the following terms:

mark(zeros)
mark(s(x0))
zerosActive
U11Active(tt, x0)
U12Active(tt, x0)
lengthActive(cons(x0, x1))

We have to consider all minimal (P,Q,R)-chains.
As all Q-normal forms are R-normal forms we are in the innermost case. Hence, by the usable rules processor [15] we can delete all non-usable rules [17] from R.

↳ CSR
  ↳ CSRInnermostProof
  ↳ Incomplete Giesl Middeldorp-Transformation
    ↳ QTRS
      ↳ RRRPoloQTRSProof
        ↳ QTRS
          ↳ RRRPoloQTRSProof
            ↳ QTRS
              ↳ RRRPoloQTRSProof
                ↳ QTRS
                  ↳ RRRPoloQTRSProof
                    ↳ QTRS
                      ↳ RRRPoloQTRSProof
                        ↳ QTRS
                          ↳ RRRPoloQTRSProof
                            ↳ QTRS
                              ↳ RRRPoloQTRSProof
                                ↳ QTRS
                                  ↳ RRRPoloQTRSProof
                                    ↳ QTRS
                                      ↳ Overlay + Local Confluence
                                        ↳ QTRS
                                          ↳ DependencyPairsProof
                                            ↳ QDP
                                              ↳ DependencyGraphProof
                                                ↳ AND
                                                  ↳ QDP
                                                    ↳ UsableRulesProof
QDP
                                                        ↳ QReductionProof
                                                  ↳ QDP
  ↳ Trivial-Transformation

Q DP problem:
The TRS P consists of the following rules:

MARK(s(x1)) → MARK(x1)

R is empty.
The set Q consists of the following terms:

mark(zeros)
mark(s(x0))
zerosActive
U11Active(tt, x0)
U12Active(tt, x0)
lengthActive(cons(x0, x1))

We have to consider all minimal (P,Q,R)-chains.
We deleted the following terms from Q as each root-symbol of these terms does neither occur in P nor in R.

mark(zeros)
mark(s(x0))
zerosActive
U11Active(tt, x0)
U12Active(tt, x0)
lengthActive(cons(x0, x1))



↳ CSR
  ↳ CSRInnermostProof
  ↳ Incomplete Giesl Middeldorp-Transformation
    ↳ QTRS
      ↳ RRRPoloQTRSProof
        ↳ QTRS
          ↳ RRRPoloQTRSProof
            ↳ QTRS
              ↳ RRRPoloQTRSProof
                ↳ QTRS
                  ↳ RRRPoloQTRSProof
                    ↳ QTRS
                      ↳ RRRPoloQTRSProof
                        ↳ QTRS
                          ↳ RRRPoloQTRSProof
                            ↳ QTRS
                              ↳ RRRPoloQTRSProof
                                ↳ QTRS
                                  ↳ RRRPoloQTRSProof
                                    ↳ QTRS
                                      ↳ Overlay + Local Confluence
                                        ↳ QTRS
                                          ↳ DependencyPairsProof
                                            ↳ QDP
                                              ↳ DependencyGraphProof
                                                ↳ AND
                                                  ↳ QDP
                                                    ↳ UsableRulesProof
                                                      ↳ QDP
                                                        ↳ QReductionProof
QDP
                                                            ↳ QDPSizeChangeProof
                                                  ↳ QDP
  ↳ Trivial-Transformation

Q DP problem:
The TRS P consists of the following rules:

MARK(s(x1)) → MARK(x1)

R is empty.
Q is empty.
We have to consider all minimal (P,Q,R)-chains.
By using the subterm criterion [20] together with the size-change analysis [32] we have proven that there are no infinite chains for this DP problem.

From the DPs we obtained the following set of size-change graphs:



↳ CSR
  ↳ CSRInnermostProof
  ↳ Incomplete Giesl Middeldorp-Transformation
    ↳ QTRS
      ↳ RRRPoloQTRSProof
        ↳ QTRS
          ↳ RRRPoloQTRSProof
            ↳ QTRS
              ↳ RRRPoloQTRSProof
                ↳ QTRS
                  ↳ RRRPoloQTRSProof
                    ↳ QTRS
                      ↳ RRRPoloQTRSProof
                        ↳ QTRS
                          ↳ RRRPoloQTRSProof
                            ↳ QTRS
                              ↳ RRRPoloQTRSProof
                                ↳ QTRS
                                  ↳ RRRPoloQTRSProof
                                    ↳ QTRS
                                      ↳ Overlay + Local Confluence
                                        ↳ QTRS
                                          ↳ DependencyPairsProof
                                            ↳ QDP
                                              ↳ DependencyGraphProof
                                                ↳ AND
                                                  ↳ QDP
QDP
                                                    ↳ UsableRulesProof
  ↳ Trivial-Transformation

Q DP problem:
The TRS P consists of the following rules:

LENGTHACTIVE(cons(N, L)) → U11ACTIVE(tt, L)
U11ACTIVE(tt, L) → U12ACTIVE(tt, L)
U12ACTIVE(tt, L) → LENGTHACTIVE(mark(L))

The TRS R consists of the following rules:

mark(zeros) → zerosActive
mark(s(x1)) → s(mark(x1))
zerosActivecons(0, zeros)
U11Active(tt, L) → U12Active(tt, L)
U12Active(tt, L) → s(lengthActive(mark(L)))
lengthActive(cons(N, L)) → U11Active(tt, L)

The set Q consists of the following terms:

mark(zeros)
mark(s(x0))
zerosActive
U11Active(tt, x0)
U12Active(tt, x0)
lengthActive(cons(x0, x1))

We have to consider all minimal (P,Q,R)-chains.
As all Q-normal forms are R-normal forms we are in the innermost case. Hence, by the usable rules processor [15] we can delete all non-usable rules [17] from R.

↳ CSR
  ↳ CSRInnermostProof
  ↳ Incomplete Giesl Middeldorp-Transformation
    ↳ QTRS
      ↳ RRRPoloQTRSProof
        ↳ QTRS
          ↳ RRRPoloQTRSProof
            ↳ QTRS
              ↳ RRRPoloQTRSProof
                ↳ QTRS
                  ↳ RRRPoloQTRSProof
                    ↳ QTRS
                      ↳ RRRPoloQTRSProof
                        ↳ QTRS
                          ↳ RRRPoloQTRSProof
                            ↳ QTRS
                              ↳ RRRPoloQTRSProof
                                ↳ QTRS
                                  ↳ RRRPoloQTRSProof
                                    ↳ QTRS
                                      ↳ Overlay + Local Confluence
                                        ↳ QTRS
                                          ↳ DependencyPairsProof
                                            ↳ QDP
                                              ↳ DependencyGraphProof
                                                ↳ AND
                                                  ↳ QDP
                                                  ↳ QDP
                                                    ↳ UsableRulesProof
QDP
                                                        ↳ QReductionProof
  ↳ Trivial-Transformation

Q DP problem:
The TRS P consists of the following rules:

LENGTHACTIVE(cons(N, L)) → U11ACTIVE(tt, L)
U11ACTIVE(tt, L) → U12ACTIVE(tt, L)
U12ACTIVE(tt, L) → LENGTHACTIVE(mark(L))

The TRS R consists of the following rules:

mark(zeros) → zerosActive
mark(s(x1)) → s(mark(x1))
zerosActivecons(0, zeros)

The set Q consists of the following terms:

mark(zeros)
mark(s(x0))
zerosActive
U11Active(tt, x0)
U12Active(tt, x0)
lengthActive(cons(x0, x1))

We have to consider all minimal (P,Q,R)-chains.
We deleted the following terms from Q as each root-symbol of these terms does neither occur in P nor in R.

U11Active(tt, x0)
U12Active(tt, x0)
lengthActive(cons(x0, x1))



↳ CSR
  ↳ CSRInnermostProof
  ↳ Incomplete Giesl Middeldorp-Transformation
    ↳ QTRS
      ↳ RRRPoloQTRSProof
        ↳ QTRS
          ↳ RRRPoloQTRSProof
            ↳ QTRS
              ↳ RRRPoloQTRSProof
                ↳ QTRS
                  ↳ RRRPoloQTRSProof
                    ↳ QTRS
                      ↳ RRRPoloQTRSProof
                        ↳ QTRS
                          ↳ RRRPoloQTRSProof
                            ↳ QTRS
                              ↳ RRRPoloQTRSProof
                                ↳ QTRS
                                  ↳ RRRPoloQTRSProof
                                    ↳ QTRS
                                      ↳ Overlay + Local Confluence
                                        ↳ QTRS
                                          ↳ DependencyPairsProof
                                            ↳ QDP
                                              ↳ DependencyGraphProof
                                                ↳ AND
                                                  ↳ QDP
                                                  ↳ QDP
                                                    ↳ UsableRulesProof
                                                      ↳ QDP
                                                        ↳ QReductionProof
QDP
                                                            ↳ Narrowing
  ↳ Trivial-Transformation

Q DP problem:
The TRS P consists of the following rules:

LENGTHACTIVE(cons(N, L)) → U11ACTIVE(tt, L)
U11ACTIVE(tt, L) → U12ACTIVE(tt, L)
U12ACTIVE(tt, L) → LENGTHACTIVE(mark(L))

The TRS R consists of the following rules:

mark(zeros) → zerosActive
mark(s(x1)) → s(mark(x1))
zerosActivecons(0, zeros)

The set Q consists of the following terms:

mark(zeros)
mark(s(x0))
zerosActive

We have to consider all minimal (P,Q,R)-chains.
By narrowing [15] the rule U12ACTIVE(tt, L) → LENGTHACTIVE(mark(L)) at position [0] we obtained the following new rules:

U12ACTIVE(tt, s(x0)) → LENGTHACTIVE(s(mark(x0)))
U12ACTIVE(tt, zeros) → LENGTHACTIVE(zerosActive)



↳ CSR
  ↳ CSRInnermostProof
  ↳ Incomplete Giesl Middeldorp-Transformation
    ↳ QTRS
      ↳ RRRPoloQTRSProof
        ↳ QTRS
          ↳ RRRPoloQTRSProof
            ↳ QTRS
              ↳ RRRPoloQTRSProof
                ↳ QTRS
                  ↳ RRRPoloQTRSProof
                    ↳ QTRS
                      ↳ RRRPoloQTRSProof
                        ↳ QTRS
                          ↳ RRRPoloQTRSProof
                            ↳ QTRS
                              ↳ RRRPoloQTRSProof
                                ↳ QTRS
                                  ↳ RRRPoloQTRSProof
                                    ↳ QTRS
                                      ↳ Overlay + Local Confluence
                                        ↳ QTRS
                                          ↳ DependencyPairsProof
                                            ↳ QDP
                                              ↳ DependencyGraphProof
                                                ↳ AND
                                                  ↳ QDP
                                                  ↳ QDP
                                                    ↳ UsableRulesProof
                                                      ↳ QDP
                                                        ↳ QReductionProof
                                                          ↳ QDP
                                                            ↳ Narrowing
QDP
                                                                ↳ DependencyGraphProof
  ↳ Trivial-Transformation

Q DP problem:
The TRS P consists of the following rules:

U12ACTIVE(tt, s(x0)) → LENGTHACTIVE(s(mark(x0)))
LENGTHACTIVE(cons(N, L)) → U11ACTIVE(tt, L)
U11ACTIVE(tt, L) → U12ACTIVE(tt, L)
U12ACTIVE(tt, zeros) → LENGTHACTIVE(zerosActive)

The TRS R consists of the following rules:

mark(zeros) → zerosActive
mark(s(x1)) → s(mark(x1))
zerosActivecons(0, zeros)

The set Q consists of the following terms:

mark(zeros)
mark(s(x0))
zerosActive

We have to consider all minimal (P,Q,R)-chains.
The approximation of the Dependency Graph [15,17,22] contains 1 SCC with 1 less node.

↳ CSR
  ↳ CSRInnermostProof
  ↳ Incomplete Giesl Middeldorp-Transformation
    ↳ QTRS
      ↳ RRRPoloQTRSProof
        ↳ QTRS
          ↳ RRRPoloQTRSProof
            ↳ QTRS
              ↳ RRRPoloQTRSProof
                ↳ QTRS
                  ↳ RRRPoloQTRSProof
                    ↳ QTRS
                      ↳ RRRPoloQTRSProof
                        ↳ QTRS
                          ↳ RRRPoloQTRSProof
                            ↳ QTRS
                              ↳ RRRPoloQTRSProof
                                ↳ QTRS
                                  ↳ RRRPoloQTRSProof
                                    ↳ QTRS
                                      ↳ Overlay + Local Confluence
                                        ↳ QTRS
                                          ↳ DependencyPairsProof
                                            ↳ QDP
                                              ↳ DependencyGraphProof
                                                ↳ AND
                                                  ↳ QDP
                                                  ↳ QDP
                                                    ↳ UsableRulesProof
                                                      ↳ QDP
                                                        ↳ QReductionProof
                                                          ↳ QDP
                                                            ↳ Narrowing
                                                              ↳ QDP
                                                                ↳ DependencyGraphProof
QDP
                                                                    ↳ UsableRulesProof
  ↳ Trivial-Transformation

Q DP problem:
The TRS P consists of the following rules:

LENGTHACTIVE(cons(N, L)) → U11ACTIVE(tt, L)
U11ACTIVE(tt, L) → U12ACTIVE(tt, L)
U12ACTIVE(tt, zeros) → LENGTHACTIVE(zerosActive)

The TRS R consists of the following rules:

mark(zeros) → zerosActive
mark(s(x1)) → s(mark(x1))
zerosActivecons(0, zeros)

The set Q consists of the following terms:

mark(zeros)
mark(s(x0))
zerosActive

We have to consider all minimal (P,Q,R)-chains.
As all Q-normal forms are R-normal forms we are in the innermost case. Hence, by the usable rules processor [15] we can delete all non-usable rules [17] from R.

↳ CSR
  ↳ CSRInnermostProof
  ↳ Incomplete Giesl Middeldorp-Transformation
    ↳ QTRS
      ↳ RRRPoloQTRSProof
        ↳ QTRS
          ↳ RRRPoloQTRSProof
            ↳ QTRS
              ↳ RRRPoloQTRSProof
                ↳ QTRS
                  ↳ RRRPoloQTRSProof
                    ↳ QTRS
                      ↳ RRRPoloQTRSProof
                        ↳ QTRS
                          ↳ RRRPoloQTRSProof
                            ↳ QTRS
                              ↳ RRRPoloQTRSProof
                                ↳ QTRS
                                  ↳ RRRPoloQTRSProof
                                    ↳ QTRS
                                      ↳ Overlay + Local Confluence
                                        ↳ QTRS
                                          ↳ DependencyPairsProof
                                            ↳ QDP
                                              ↳ DependencyGraphProof
                                                ↳ AND
                                                  ↳ QDP
                                                  ↳ QDP
                                                    ↳ UsableRulesProof
                                                      ↳ QDP
                                                        ↳ QReductionProof
                                                          ↳ QDP
                                                            ↳ Narrowing
                                                              ↳ QDP
                                                                ↳ DependencyGraphProof
                                                                  ↳ QDP
                                                                    ↳ UsableRulesProof
QDP
                                                                        ↳ QReductionProof
  ↳ Trivial-Transformation

Q DP problem:
The TRS P consists of the following rules:

LENGTHACTIVE(cons(N, L)) → U11ACTIVE(tt, L)
U11ACTIVE(tt, L) → U12ACTIVE(tt, L)
U12ACTIVE(tt, zeros) → LENGTHACTIVE(zerosActive)

The TRS R consists of the following rules:

zerosActivecons(0, zeros)

The set Q consists of the following terms:

mark(zeros)
mark(s(x0))
zerosActive

We have to consider all minimal (P,Q,R)-chains.
We deleted the following terms from Q as each root-symbol of these terms does neither occur in P nor in R.

mark(zeros)
mark(s(x0))



↳ CSR
  ↳ CSRInnermostProof
  ↳ Incomplete Giesl Middeldorp-Transformation
    ↳ QTRS
      ↳ RRRPoloQTRSProof
        ↳ QTRS
          ↳ RRRPoloQTRSProof
            ↳ QTRS
              ↳ RRRPoloQTRSProof
                ↳ QTRS
                  ↳ RRRPoloQTRSProof
                    ↳ QTRS
                      ↳ RRRPoloQTRSProof
                        ↳ QTRS
                          ↳ RRRPoloQTRSProof
                            ↳ QTRS
                              ↳ RRRPoloQTRSProof
                                ↳ QTRS
                                  ↳ RRRPoloQTRSProof
                                    ↳ QTRS
                                      ↳ Overlay + Local Confluence
                                        ↳ QTRS
                                          ↳ DependencyPairsProof
                                            ↳ QDP
                                              ↳ DependencyGraphProof
                                                ↳ AND
                                                  ↳ QDP
                                                  ↳ QDP
                                                    ↳ UsableRulesProof
                                                      ↳ QDP
                                                        ↳ QReductionProof
                                                          ↳ QDP
                                                            ↳ Narrowing
                                                              ↳ QDP
                                                                ↳ DependencyGraphProof
                                                                  ↳ QDP
                                                                    ↳ UsableRulesProof
                                                                      ↳ QDP
                                                                        ↳ QReductionProof
QDP
                                                                            ↳ Narrowing
  ↳ Trivial-Transformation

Q DP problem:
The TRS P consists of the following rules:

LENGTHACTIVE(cons(N, L)) → U11ACTIVE(tt, L)
U11ACTIVE(tt, L) → U12ACTIVE(tt, L)
U12ACTIVE(tt, zeros) → LENGTHACTIVE(zerosActive)

The TRS R consists of the following rules:

zerosActivecons(0, zeros)

The set Q consists of the following terms:

zerosActive

We have to consider all minimal (P,Q,R)-chains.
By narrowing [15] the rule U12ACTIVE(tt, zeros) → LENGTHACTIVE(zerosActive) at position [0] we obtained the following new rules:

U12ACTIVE(tt, zeros) → LENGTHACTIVE(cons(0, zeros))



↳ CSR
  ↳ CSRInnermostProof
  ↳ Incomplete Giesl Middeldorp-Transformation
    ↳ QTRS
      ↳ RRRPoloQTRSProof
        ↳ QTRS
          ↳ RRRPoloQTRSProof
            ↳ QTRS
              ↳ RRRPoloQTRSProof
                ↳ QTRS
                  ↳ RRRPoloQTRSProof
                    ↳ QTRS
                      ↳ RRRPoloQTRSProof
                        ↳ QTRS
                          ↳ RRRPoloQTRSProof
                            ↳ QTRS
                              ↳ RRRPoloQTRSProof
                                ↳ QTRS
                                  ↳ RRRPoloQTRSProof
                                    ↳ QTRS
                                      ↳ Overlay + Local Confluence
                                        ↳ QTRS
                                          ↳ DependencyPairsProof
                                            ↳ QDP
                                              ↳ DependencyGraphProof
                                                ↳ AND
                                                  ↳ QDP
                                                  ↳ QDP
                                                    ↳ UsableRulesProof
                                                      ↳ QDP
                                                        ↳ QReductionProof
                                                          ↳ QDP
                                                            ↳ Narrowing
                                                              ↳ QDP
                                                                ↳ DependencyGraphProof
                                                                  ↳ QDP
                                                                    ↳ UsableRulesProof
                                                                      ↳ QDP
                                                                        ↳ QReductionProof
                                                                          ↳ QDP
                                                                            ↳ Narrowing
QDP
                                                                                ↳ UsableRulesProof
  ↳ Trivial-Transformation

Q DP problem:
The TRS P consists of the following rules:

U12ACTIVE(tt, zeros) → LENGTHACTIVE(cons(0, zeros))
LENGTHACTIVE(cons(N, L)) → U11ACTIVE(tt, L)
U11ACTIVE(tt, L) → U12ACTIVE(tt, L)

The TRS R consists of the following rules:

zerosActivecons(0, zeros)

The set Q consists of the following terms:

zerosActive

We have to consider all minimal (P,Q,R)-chains.
As all Q-normal forms are R-normal forms we are in the innermost case. Hence, by the usable rules processor [15] we can delete all non-usable rules [17] from R.

↳ CSR
  ↳ CSRInnermostProof
  ↳ Incomplete Giesl Middeldorp-Transformation
    ↳ QTRS
      ↳ RRRPoloQTRSProof
        ↳ QTRS
          ↳ RRRPoloQTRSProof
            ↳ QTRS
              ↳ RRRPoloQTRSProof
                ↳ QTRS
                  ↳ RRRPoloQTRSProof
                    ↳ QTRS
                      ↳ RRRPoloQTRSProof
                        ↳ QTRS
                          ↳ RRRPoloQTRSProof
                            ↳ QTRS
                              ↳ RRRPoloQTRSProof
                                ↳ QTRS
                                  ↳ RRRPoloQTRSProof
                                    ↳ QTRS
                                      ↳ Overlay + Local Confluence
                                        ↳ QTRS
                                          ↳ DependencyPairsProof
                                            ↳ QDP
                                              ↳ DependencyGraphProof
                                                ↳ AND
                                                  ↳ QDP
                                                  ↳ QDP
                                                    ↳ UsableRulesProof
                                                      ↳ QDP
                                                        ↳ QReductionProof
                                                          ↳ QDP
                                                            ↳ Narrowing
                                                              ↳ QDP
                                                                ↳ DependencyGraphProof
                                                                  ↳ QDP
                                                                    ↳ UsableRulesProof
                                                                      ↳ QDP
                                                                        ↳ QReductionProof
                                                                          ↳ QDP
                                                                            ↳ Narrowing
                                                                              ↳ QDP
                                                                                ↳ UsableRulesProof
QDP
                                                                                    ↳ QReductionProof
  ↳ Trivial-Transformation

Q DP problem:
The TRS P consists of the following rules:

U12ACTIVE(tt, zeros) → LENGTHACTIVE(cons(0, zeros))
LENGTHACTIVE(cons(N, L)) → U11ACTIVE(tt, L)
U11ACTIVE(tt, L) → U12ACTIVE(tt, L)

R is empty.
The set Q consists of the following terms:

zerosActive

We have to consider all minimal (P,Q,R)-chains.
We deleted the following terms from Q as each root-symbol of these terms does neither occur in P nor in R.

zerosActive



↳ CSR
  ↳ CSRInnermostProof
  ↳ Incomplete Giesl Middeldorp-Transformation
    ↳ QTRS
      ↳ RRRPoloQTRSProof
        ↳ QTRS
          ↳ RRRPoloQTRSProof
            ↳ QTRS
              ↳ RRRPoloQTRSProof
                ↳ QTRS
                  ↳ RRRPoloQTRSProof
                    ↳ QTRS
                      ↳ RRRPoloQTRSProof
                        ↳ QTRS
                          ↳ RRRPoloQTRSProof
                            ↳ QTRS
                              ↳ RRRPoloQTRSProof
                                ↳ QTRS
                                  ↳ RRRPoloQTRSProof
                                    ↳ QTRS
                                      ↳ Overlay + Local Confluence
                                        ↳ QTRS
                                          ↳ DependencyPairsProof
                                            ↳ QDP
                                              ↳ DependencyGraphProof
                                                ↳ AND
                                                  ↳ QDP
                                                  ↳ QDP
                                                    ↳ UsableRulesProof
                                                      ↳ QDP
                                                        ↳ QReductionProof
                                                          ↳ QDP
                                                            ↳ Narrowing
                                                              ↳ QDP
                                                                ↳ DependencyGraphProof
                                                                  ↳ QDP
                                                                    ↳ UsableRulesProof
                                                                      ↳ QDP
                                                                        ↳ QReductionProof
                                                                          ↳ QDP
                                                                            ↳ Narrowing
                                                                              ↳ QDP
                                                                                ↳ UsableRulesProof
                                                                                  ↳ QDP
                                                                                    ↳ QReductionProof
QDP
  ↳ Trivial-Transformation

Q DP problem:
The TRS P consists of the following rules:

U12ACTIVE(tt, zeros) → LENGTHACTIVE(cons(0, zeros))
LENGTHACTIVE(cons(N, L)) → U11ACTIVE(tt, L)
U11ACTIVE(tt, L) → U12ACTIVE(tt, L)

R is empty.
Q is empty.
We have to consider all minimal (P,Q,R)-chains.
We applied the Trivial transformation to transform the context-sensitive TRS to a usual TRS.

↳ CSR
  ↳ CSRInnermostProof
  ↳ Incomplete Giesl Middeldorp-Transformation
  ↳ Trivial-Transformation
QTRS
      ↳ RRRPoloQTRSProof

Q restricted rewrite system:
The TRS R consists of the following rules:

zeroscons(0, zeros)
U11(tt, L) → U12(tt, L)
U12(tt, L) → s(length(L))
length(nil) → 0
length(cons(N, L)) → U11(tt, L)

Q is empty.

The following Q TRS is given: Q restricted rewrite system:
The TRS R consists of the following rules:

zeroscons(0, zeros)
U11(tt, L) → U12(tt, L)
U12(tt, L) → s(length(L))
length(nil) → 0
length(cons(N, L)) → U11(tt, L)

Q is empty.
The following rules can be removed by the rule removal processor [15] because they are oriented strictly by a polynomial ordering:

length(nil) → 0
Used ordering:
Polynomial interpretation [25]:

POL(0) = 0   
POL(U11(x1, x2)) = 2 + 2·x1 + 2·x2   
POL(U12(x1, x2)) = 2 + x1 + x2   
POL(cons(x1, x2)) = 2·x1 + 2·x2   
POL(length(x1)) = 2 + x1   
POL(nil) = 1   
POL(s(x1)) = x1   
POL(tt) = 0   
POL(zeros) = 0   




↳ CSR
  ↳ CSRInnermostProof
  ↳ Incomplete Giesl Middeldorp-Transformation
  ↳ Trivial-Transformation
    ↳ QTRS
      ↳ RRRPoloQTRSProof
QTRS
          ↳ Overlay + Local Confluence

Q restricted rewrite system:
The TRS R consists of the following rules:

zeroscons(0, zeros)
U11(tt, L) → U12(tt, L)
U12(tt, L) → s(length(L))
length(cons(N, L)) → U11(tt, L)

Q is empty.

The TRS is overlay and locally confluent. By [19] we can switch to innermost.

↳ CSR
  ↳ CSRInnermostProof
  ↳ Incomplete Giesl Middeldorp-Transformation
  ↳ Trivial-Transformation
    ↳ QTRS
      ↳ RRRPoloQTRSProof
        ↳ QTRS
          ↳ Overlay + Local Confluence
QTRS
              ↳ DependencyPairsProof

Q restricted rewrite system:
The TRS R consists of the following rules:

zeroscons(0, zeros)
U11(tt, L) → U12(tt, L)
U12(tt, L) → s(length(L))
length(cons(N, L)) → U11(tt, L)

The set Q consists of the following terms:

zeros
U11(tt, x0)
U12(tt, x0)
length(cons(x0, x1))


Using Dependency Pairs [1,15] we result in the following initial DP problem:
Q DP problem:
The TRS P consists of the following rules:

ZEROSZEROS
LENGTH(cons(N, L)) → U111(tt, L)
U121(tt, L) → LENGTH(L)
U111(tt, L) → U121(tt, L)

The TRS R consists of the following rules:

zeroscons(0, zeros)
U11(tt, L) → U12(tt, L)
U12(tt, L) → s(length(L))
length(cons(N, L)) → U11(tt, L)

The set Q consists of the following terms:

zeros
U11(tt, x0)
U12(tt, x0)
length(cons(x0, x1))

We have to consider all minimal (P,Q,R)-chains.

↳ CSR
  ↳ CSRInnermostProof
  ↳ Incomplete Giesl Middeldorp-Transformation
  ↳ Trivial-Transformation
    ↳ QTRS
      ↳ RRRPoloQTRSProof
        ↳ QTRS
          ↳ Overlay + Local Confluence
            ↳ QTRS
              ↳ DependencyPairsProof
QDP
                  ↳ DependencyGraphProof

Q DP problem:
The TRS P consists of the following rules:

ZEROSZEROS
LENGTH(cons(N, L)) → U111(tt, L)
U121(tt, L) → LENGTH(L)
U111(tt, L) → U121(tt, L)

The TRS R consists of the following rules:

zeroscons(0, zeros)
U11(tt, L) → U12(tt, L)
U12(tt, L) → s(length(L))
length(cons(N, L)) → U11(tt, L)

The set Q consists of the following terms:

zeros
U11(tt, x0)
U12(tt, x0)
length(cons(x0, x1))

We have to consider all minimal (P,Q,R)-chains.
The approximation of the Dependency Graph [15,17,22] contains 2 SCCs.

↳ CSR
  ↳ CSRInnermostProof
  ↳ Incomplete Giesl Middeldorp-Transformation
  ↳ Trivial-Transformation
    ↳ QTRS
      ↳ RRRPoloQTRSProof
        ↳ QTRS
          ↳ Overlay + Local Confluence
            ↳ QTRS
              ↳ DependencyPairsProof
                ↳ QDP
                  ↳ DependencyGraphProof
                    ↳ AND
QDP
                        ↳ UsableRulesProof
                      ↳ QDP

Q DP problem:
The TRS P consists of the following rules:

LENGTH(cons(N, L)) → U111(tt, L)
U111(tt, L) → U121(tt, L)
U121(tt, L) → LENGTH(L)

The TRS R consists of the following rules:

zeroscons(0, zeros)
U11(tt, L) → U12(tt, L)
U12(tt, L) → s(length(L))
length(cons(N, L)) → U11(tt, L)

The set Q consists of the following terms:

zeros
U11(tt, x0)
U12(tt, x0)
length(cons(x0, x1))

We have to consider all minimal (P,Q,R)-chains.
As all Q-normal forms are R-normal forms we are in the innermost case. Hence, by the usable rules processor [15] we can delete all non-usable rules [17] from R.

↳ CSR
  ↳ CSRInnermostProof
  ↳ Incomplete Giesl Middeldorp-Transformation
  ↳ Trivial-Transformation
    ↳ QTRS
      ↳ RRRPoloQTRSProof
        ↳ QTRS
          ↳ Overlay + Local Confluence
            ↳ QTRS
              ↳ DependencyPairsProof
                ↳ QDP
                  ↳ DependencyGraphProof
                    ↳ AND
                      ↳ QDP
                        ↳ UsableRulesProof
QDP
                            ↳ QReductionProof
                      ↳ QDP

Q DP problem:
The TRS P consists of the following rules:

LENGTH(cons(N, L)) → U111(tt, L)
U111(tt, L) → U121(tt, L)
U121(tt, L) → LENGTH(L)

R is empty.
The set Q consists of the following terms:

zeros
U11(tt, x0)
U12(tt, x0)
length(cons(x0, x1))

We have to consider all minimal (P,Q,R)-chains.
We deleted the following terms from Q as each root-symbol of these terms does neither occur in P nor in R.

zeros
U11(tt, x0)
U12(tt, x0)
length(cons(x0, x1))



↳ CSR
  ↳ CSRInnermostProof
  ↳ Incomplete Giesl Middeldorp-Transformation
  ↳ Trivial-Transformation
    ↳ QTRS
      ↳ RRRPoloQTRSProof
        ↳ QTRS
          ↳ Overlay + Local Confluence
            ↳ QTRS
              ↳ DependencyPairsProof
                ↳ QDP
                  ↳ DependencyGraphProof
                    ↳ AND
                      ↳ QDP
                        ↳ UsableRulesProof
                          ↳ QDP
                            ↳ QReductionProof
QDP
                                ↳ QDPSizeChangeProof
                      ↳ QDP

Q DP problem:
The TRS P consists of the following rules:

LENGTH(cons(N, L)) → U111(tt, L)
U121(tt, L) → LENGTH(L)
U111(tt, L) → U121(tt, L)

R is empty.
Q is empty.
We have to consider all minimal (P,Q,R)-chains.
By using the subterm criterion [20] together with the size-change analysis [32] we have proven that there are no infinite chains for this DP problem.

From the DPs we obtained the following set of size-change graphs:



↳ CSR
  ↳ CSRInnermostProof
  ↳ Incomplete Giesl Middeldorp-Transformation
  ↳ Trivial-Transformation
    ↳ QTRS
      ↳ RRRPoloQTRSProof
        ↳ QTRS
          ↳ Overlay + Local Confluence
            ↳ QTRS
              ↳ DependencyPairsProof
                ↳ QDP
                  ↳ DependencyGraphProof
                    ↳ AND
                      ↳ QDP
QDP
                        ↳ UsableRulesProof

Q DP problem:
The TRS P consists of the following rules:

ZEROSZEROS

The TRS R consists of the following rules:

zeroscons(0, zeros)
U11(tt, L) → U12(tt, L)
U12(tt, L) → s(length(L))
length(cons(N, L)) → U11(tt, L)

The set Q consists of the following terms:

zeros
U11(tt, x0)
U12(tt, x0)
length(cons(x0, x1))

We have to consider all minimal (P,Q,R)-chains.
As all Q-normal forms are R-normal forms we are in the innermost case. Hence, by the usable rules processor [15] we can delete all non-usable rules [17] from R.

↳ CSR
  ↳ CSRInnermostProof
  ↳ Incomplete Giesl Middeldorp-Transformation
  ↳ Trivial-Transformation
    ↳ QTRS
      ↳ RRRPoloQTRSProof
        ↳ QTRS
          ↳ Overlay + Local Confluence
            ↳ QTRS
              ↳ DependencyPairsProof
                ↳ QDP
                  ↳ DependencyGraphProof
                    ↳ AND
                      ↳ QDP
                      ↳ QDP
                        ↳ UsableRulesProof
QDP
                            ↳ QReductionProof

Q DP problem:
The TRS P consists of the following rules:

ZEROSZEROS

R is empty.
The set Q consists of the following terms:

zeros
U11(tt, x0)
U12(tt, x0)
length(cons(x0, x1))

We have to consider all minimal (P,Q,R)-chains.
We deleted the following terms from Q as each root-symbol of these terms does neither occur in P nor in R.

zeros
U11(tt, x0)
U12(tt, x0)
length(cons(x0, x1))



↳ CSR
  ↳ CSRInnermostProof
  ↳ Incomplete Giesl Middeldorp-Transformation
  ↳ Trivial-Transformation
    ↳ QTRS
      ↳ RRRPoloQTRSProof
        ↳ QTRS
          ↳ Overlay + Local Confluence
            ↳ QTRS
              ↳ DependencyPairsProof
                ↳ QDP
                  ↳ DependencyGraphProof
                    ↳ AND
                      ↳ QDP
                      ↳ QDP
                        ↳ UsableRulesProof
                          ↳ QDP
                            ↳ QReductionProof
QDP

Q DP problem:
The TRS P consists of the following rules:

ZEROSZEROS

R is empty.
Q is empty.
We have to consider all minimal (P,Q,R)-chains.